//
//  HMSportTracking.h
//  黑马行
//
//  Created by 刘凡 on 2016/9/14.
//  Copyright © 2016年 itcast. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "HMSportTrackingLine.h"

/// 运动类型枚举
typedef enum : NSUInteger {
    HMSportTypeRun,
    HMSportTypeWalk,
    HMSportTypeBike,
} HMSportType;

/// 运动状态枚举
typedef enum : NSUInteger {
    HMSportStatePause,
    HMSportStateContinue,
    HMSportStateFinish,
} HMSportState;

/**
 单次运动轨迹追踪模型
 */
@interface HMSportTracking : NSObject

/**
 使用运动类型实例化追踪模型

 @param type type

 @return 追踪模型
 */
- (instancetype)initWithType:(HMSportType)type state:(HMSportState)state;

/**
 运动类型
 */
@property (nonatomic, assign, readonly) HMSportType sportType;

/**
 运动状态
 */
@property (nonatomic, assign) HMSportState sportState;

/**
 运动图像
 */
@property (nonatomic, strong, readonly) UIImage *sportImage;

/**
 追加用户当前位置，返回折线模型

 @param location location

 @return 折线模型
 */
- (HMSportPolyline *)appendLocation:(CLLocation *)location;

/**
 平均速度
 */
@property (nonatomic, readonly) double avgSpeed;
/**
 最大速度
 */
@property (nonatomic, readonly) double maxSpeed;
/**
 总时长
 */
@property (nonatomic, readonly) double totalTime;
/**
 总距离
 */
@property (nonatomic, readonly) double totalDistance;

@end
